package cn.highedu.coolshark_product.service;

import lombok.extern.slf4j.Slf4j;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.stereotype.Service;

/**
 * 日志业务类
 * 验证用户权限
 */
@Service
@Slf4j
public class LogService {
    /**
     * 管理员日志方法 需要具有ADMIN角色的用户才能访问
     * @PreAuthorize("hasRole('ADMIN')")方法授权访问
     * hasRole 检查是否具有指定的角色 不用写ROLE_前缀
     */
    @PreAuthorize("hasRole('ADMIN')")
    public void adminLog() {
        log.debug("管理员访问日志");
    }

    /**
     * 经理日志方法 需要具有MANAGER角色的用户才能访问
     */
    @PreAuthorize("hasRole('MANAGER')")
    public void managerLog() {
        log.debug("经理访问日志");
    }

    /**
     * 具有查询日志的权限 才能访问
     */
    @PreAuthorize("hasAuthority('sys:log:query')")
    public void queryLog() {
        log.debug("日志查询方法");
    }

    /**
     * 具有删除日志的权限 才能访问
     */
    @PreAuthorize("hasAuthority('sys:log:delete')")
    public void deleteLog() {
        log.debug("日志删除方法");
    }
}
